/*
 * Copyright 2010-2016 the original author or authors.
 * 
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * 文件：test.BmpKpi.java
 * 日 期：Thu Dec 19 11:54:57 CST 2013
 */
package test;

import java.io.Serializable;
import java.sql.Timestamp;
import org.uorm.orm.annotation.ClassMapping;
import org.uorm.orm.annotation.FieldMapping;

/**
 *
 * this file is generated by the uorm pojo tools.
 *
 * @author <a href="mailto:xunchangguo@gmail.com">郭训常</a>
 * @version 1.0.0
 */
@ClassMapping(tableName = "BMP_KPI", keyGenerator = "increment")
public class BmpKpi implements Serializable {
	
	private static final long serialVersionUID = 1L;
	
	public static String PROP_CHECK_DESC = "CHECK_DESC";
	public static String PROP_CHECK_TIME = "CHECK_TIME";
	public static String PROP_CHECK_USER = "CHECK_USER";
	public static String PROP_CN_NAME = "CN_NAME";
	public static String PROP_CREATE_TIME = "CREATE_TIME";
	public static String PROP_CREATE_USER = "CREATE_USER";
	public static String PROP_DATA_TYPE = "DATA_TYPE";
	public static String PROP_DELETE_FLAG = "DELETE_FLAG";
	public static String PROP_DESCRIPTION = "DESCRIPTION";
	public static String PROP_DOMAIN_CODE = "DOMAIN_CODE";
	public static String PROP_EN_NAME = "EN_NAME";
	public static String PROP_EVENT_LEVEL = "EVENT_LEVEL";
	public static String PROP_EVENT_TYPE = "EVENT_TYPE";
	public static String PROP_KPI_CODE = "KPI_CODE";
	public static String PROP_KPI_ID = "KPI_ID";
	public static String PROP_KPI_LEVEL = "KPI_LEVEL";
	public static String PROP_KPI_POS = "KPI_POS";
	public static String PROP_KPI_TYPE = "KPI_TYPE";
	public static String PROP_MODIFY_STATUS = "MODIFY_STATUS";
	public static String PROP_SET_CODE = "SET_CODE";
	public static String PROP_SET_ID = "SET_ID";
	public static String PROP_STATE = "STATE";
	public static String PROP_UNIT = "UNIT";
	
	//primary key field of kpiId
	@FieldMapping(columnName = "KPI_ID", columnType = 4, primary = true)
	@com.google.gson.annotations.SerializedName("KPI_ID")
	private Integer kpiId;
	@FieldMapping(columnName = "CHECK_DESC", columnType = 12)
	@com.google.gson.annotations.SerializedName("CHECK_DESC")
	private String checkDesc;
	@FieldMapping(columnName = "CHECK_TIME", columnType = 93)
	@com.google.gson.annotations.SerializedName("CHECK_TIME")
	private Timestamp checkTime;
	@FieldMapping(columnName = "CHECK_USER", columnType = 12)
	@com.google.gson.annotations.SerializedName("CHECK_USER")
	private String checkUser;
	@FieldMapping(columnName = "CN_NAME", columnType = 12)
	@com.google.gson.annotations.SerializedName("CN_NAME")
	private String cnName;
	@FieldMapping(columnName = "CREATE_TIME", columnType = 93)
	@com.google.gson.annotations.SerializedName("CREATE_TIME")
	private Timestamp createTime;
	@FieldMapping(columnName = "CREATE_USER", columnType = 12)
	@com.google.gson.annotations.SerializedName("CREATE_USER")
	private String createUser;
	@FieldMapping(columnName = "DATA_TYPE", columnType = 12)
	@com.google.gson.annotations.SerializedName("DATA_TYPE")
	private String dataType;
	@FieldMapping(columnName = "DELETE_FLAG", columnType = 4)
	@com.google.gson.annotations.SerializedName("DELETE_FLAG")
	private Integer deleteFlag;
	@FieldMapping(columnName = "DESCRIPTION", columnType = 12)
	@com.google.gson.annotations.SerializedName("DESCRIPTION")
	private String description;
	@FieldMapping(columnName = "DOMAIN_CODE", columnType = 12)
	@com.google.gson.annotations.SerializedName("DOMAIN_CODE")
	private String domainCode;
	@FieldMapping(columnName = "EN_NAME", columnType = 12)
	@com.google.gson.annotations.SerializedName("EN_NAME")
	private String enName;
	@FieldMapping(columnName = "EVENT_LEVEL", columnType = 4)
	@com.google.gson.annotations.SerializedName("EVENT_LEVEL")
	private Integer eventLevel;
	@FieldMapping(columnName = "EVENT_TYPE", columnType = 4)
	@com.google.gson.annotations.SerializedName("EVENT_TYPE")
	private Integer eventType;
	@FieldMapping(columnName = "KPI_CODE", columnType = 12)
	@com.google.gson.annotations.SerializedName("KPI_CODE")
	private String kpiCode;
	@FieldMapping(columnName = "KPI_LEVEL", columnType = 4)
	@com.google.gson.annotations.SerializedName("KPI_LEVEL")
	private Integer kpiLevel;
	@FieldMapping(columnName = "KPI_POS", columnType = 12)
	@com.google.gson.annotations.SerializedName("KPI_POS")
	private String kpiPos;
	@FieldMapping(columnName = "KPI_TYPE", columnType = 12)
	@com.google.gson.annotations.SerializedName("KPI_TYPE")
	private String kpiType;
	@FieldMapping(columnName = "MODIFY_STATUS", columnType = 4)
	@com.google.gson.annotations.SerializedName("MODIFY_STATUS")
	private Integer modifyStatus;
	@FieldMapping(columnName = "SET_CODE", columnType = 12)
	@com.google.gson.annotations.SerializedName("SET_CODE")
	private String setCode;
	@FieldMapping(columnName = "SET_ID", columnType = 4)
	@com.google.gson.annotations.SerializedName("SET_ID")
	private Integer setId;
	@FieldMapping(columnName = "STATE", columnType = 4)
	@com.google.gson.annotations.SerializedName("STATE")
	private Integer state;
	@FieldMapping(columnName = "UNIT", columnType = 12)
	@com.google.gson.annotations.SerializedName("UNIT")
	private String unit;
	
	public BmpKpi() {
		super();
	}

	public BmpKpi(Integer kpiId) {
		this.kpiId = kpiId;
	}

	public BmpKpi(String cnName, Integer deleteFlag, String domainCode, String enName, String kpiCode, Integer kpiLevel, String kpiPos, Integer modifyStatus, String setCode, Integer setId) {
		this.cnName = cnName;
		this.deleteFlag = deleteFlag;
		this.domainCode = domainCode;
		this.enName = enName;
		this.kpiCode = kpiCode;
		this.kpiLevel = kpiLevel;
		this.kpiPos = kpiPos;
		this.modifyStatus = modifyStatus;
		this.setCode = setCode;
		this.setId = setId;
	}

	/**
	 * @return the checkDesc
	 */
	public String getCheckDesc() {
		return this.checkDesc;
	}
	
	/**
	 * @param checkDesc the checkDesc to set
	 */
	public void setCheckDesc(String value) {
		this.checkDesc = value;
	}

	/**
	 * @return the checkTime
	 */
	public Timestamp getCheckTime() {
		return this.checkTime;
	}
	
	/**
	 * @param checkTime the checkTime to set
	 */
	public void setCheckTime(Timestamp value) {
		this.checkTime = value;
	}

	/**
	 * @return the checkUser
	 */
	public String getCheckUser() {
		return this.checkUser;
	}
	
	/**
	 * @param checkUser the checkUser to set
	 */
	public void setCheckUser(String value) {
		this.checkUser = value;
	}

	/**
	 * @return the cnName
	 */
	public String getCnName() {
		return this.cnName;
	}
	
	/**
	 * @param cnName the cnName to set
	 */
	public void setCnName(String value) {
		this.cnName = value;
	}

	/**
	 * @return the createTime
	 */
	public Timestamp getCreateTime() {
		return this.createTime;
	}
	
	/**
	 * @param createTime the createTime to set
	 */
	public void setCreateTime(Timestamp value) {
		this.createTime = value;
	}

	/**
	 * @return the createUser
	 */
	public String getCreateUser() {
		return this.createUser;
	}
	
	/**
	 * @param createUser the createUser to set
	 */
	public void setCreateUser(String value) {
		this.createUser = value;
	}

	/**
	 * @return the dataType
	 */
	public String getDataType() {
		return this.dataType;
	}
	
	/**
	 * @param dataType the dataType to set
	 */
	public void setDataType(String value) {
		this.dataType = value;
	}

	/**
	 * @return the deleteFlag
	 */
	public Integer getDeleteFlag() {
		return this.deleteFlag;
	}
	
	/**
	 * @param deleteFlag the deleteFlag to set
	 */
	public void setDeleteFlag(Integer value) {
		this.deleteFlag = value;
	}

	/**
	 * @return the description
	 */
	public String getDescription() {
		return this.description;
	}
	
	/**
	 * @param description the description to set
	 */
	public void setDescription(String value) {
		this.description = value;
	}

	/**
	 * @return the domainCode
	 */
	public String getDomainCode() {
		return this.domainCode;
	}
	
	/**
	 * @param domainCode the domainCode to set
	 */
	public void setDomainCode(String value) {
		this.domainCode = value;
	}

	/**
	 * @return the enName
	 */
	public String getEnName() {
		return this.enName;
	}
	
	/**
	 * @param enName the enName to set
	 */
	public void setEnName(String value) {
		this.enName = value;
	}

	/**
	 * @return the eventLevel
	 */
	public Integer getEventLevel() {
		return this.eventLevel;
	}
	
	/**
	 * @param eventLevel the eventLevel to set
	 */
	public void setEventLevel(Integer value) {
		this.eventLevel = value;
	}

	/**
	 * @return the eventType
	 */
	public Integer getEventType() {
		return this.eventType;
	}
	
	/**
	 * @param eventType the eventType to set
	 */
	public void setEventType(Integer value) {
		this.eventType = value;
	}

	/**
	 * @return the kpiCode
	 */
	public String getKpiCode() {
		return this.kpiCode;
	}
	
	/**
	 * @param kpiCode the kpiCode to set
	 */
	public void setKpiCode(String value) {
		this.kpiCode = value;
	}

	/**
	 * @return the kpiId
	 */
	public Integer getKpiId() {
		return this.kpiId;
	}
	
	/**
	 * @param kpiId the kpiId to set
	 */
	public void setKpiId(Integer value) {
		this.kpiId = value;
	}

	/**
	 * @return the kpiLevel
	 */
	public Integer getKpiLevel() {
		return this.kpiLevel;
	}
	
	/**
	 * @param kpiLevel the kpiLevel to set
	 */
	public void setKpiLevel(Integer value) {
		this.kpiLevel = value;
	}

	/**
	 * @return the kpiPos
	 */
	public String getKpiPos() {
		return this.kpiPos;
	}
	
	/**
	 * @param kpiPos the kpiPos to set
	 */
	public void setKpiPos(String value) {
		this.kpiPos = value;
	}

	/**
	 * @return the kpiType
	 */
	public String getKpiType() {
		return this.kpiType;
	}
	
	/**
	 * @param kpiType the kpiType to set
	 */
	public void setKpiType(String value) {
		this.kpiType = value;
	}

	/**
	 * @return the modifyStatus
	 */
	public Integer getModifyStatus() {
		return this.modifyStatus;
	}
	
	/**
	 * @param modifyStatus the modifyStatus to set
	 */
	public void setModifyStatus(Integer value) {
		this.modifyStatus = value;
	}

	/**
	 * @return the setCode
	 */
	public String getSetCode() {
		return this.setCode;
	}
	
	/**
	 * @param setCode the setCode to set
	 */
	public void setSetCode(String value) {
		this.setCode = value;
	}

	/**
	 * @return the setId
	 */
	public Integer getSetId() {
		return this.setId;
	}
	
	/**
	 * @param setId the setId to set
	 */
	public void setSetId(Integer value) {
		this.setId = value;
	}

	/**
	 * @return the state
	 */
	public Integer getState() {
		return this.state;
	}
	
	/**
	 * @param state the state to set
	 */
	public void setState(Integer value) {
		this.state = value;
	}

	/**
	 * @return the unit
	 */
	public String getUnit() {
		return this.unit;
	}
	
	/**
	 * @param unit the unit to set
	 */
	public void setUnit(String value) {
		this.unit = value;
	}

	/* (non-Javadoc)
	 * @see java.lang.Object#equals(java.lang.Object)
	 */
	@Override
	public boolean equals(Object o) {
		if ((o == null) || !(o instanceof BmpKpi)) {
			return false;
		}
		BmpKpi other = (BmpKpi)o;
		if (null == this.kpiId) {
			if (other.kpiId != null)
				return false;
		} else if (!this.kpiId.equals(other.kpiId))
			return false;
		return true;
	}
	
	/* (non-Javadoc)
	 * @see java.lang.Object#hashCode()
	 */
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((kpiId == null) ? 0 : kpiId.hashCode());
		return result;
	}
	
}